//导入axios包(ES6模块化规范, 因为使用了babel包(解析ES6))
import axios from 'axios'

//创建axios实例
const instance = axios.create({
  baseURL: 'http://localhost:7001',
  timeout: 3000, //超时则为获取数据失败
})
//添加拦截器
//给instance实例添加响应拦截器(统一处理响应数据)
//.use接收两个参数函数, 分别是响应的回调, 失败的回调
instance.interceptors.response.use(
  function (response) {
    if (response.status == 200) return response.data
  },
  function (error) {
    //调用Promise.reject(), 封装成一个状态为rejected的promise对象
    return Promise.reject(error)
  }
)

//导出axios实例
export default {
  install(Vue) {
    Vue.prototype.$http = instance
    Vue.prototype.axios = instance
  },
}
